#include "Matrix33.h"
#include "Matrix34.h"
#include "Matrix44.h"

/************************************************************************/
/* Matrix33                                                             */
/************************************************************************/
// CONSTANTES FLOAT
const Mat33f  m33fIDENTITY	( 1.0f, 0.0f, 0.0f,
							  0.0f, 1.0f, 0.0f,
							  0.0f, 0.0f, 1.0f );

const Mat33f  m33fZERO		( 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f );

const Mat33f  m33fONES		( 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f );

// CONSTANTES DOUBLE
const Mat33d  m33dIDENTITY	( 1.0, 0.0, 0.0,
							  0.0, 1.0, 0.0,
							  0.0, 0.0, 1.0 );

const Mat33d  m33dZERO		( 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0 );

const Mat33d  m33dONES		( 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0,
							 1.0, 1.0, 1.0 );

/************************************************************************/
/* Matrix34                                                             */
/************************************************************************/
// FLOAT
const Mat34f  m34fIDENTITY  ( 1.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 1.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 1.0f, 0.0f );

const Mat34f  m34fZERO      ( 0.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 0.0f );

const Mat34f  m34fONES      ( 1.0f, 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f, 1.0f );

// DOUBLE
const Mat34d  m34dIDENTITY  ( 1.0, 0.0, 0.0, 0.0,
							  0.0, 1.0, 0.0, 0.0,
							  0.0, 0.0, 1.0, 0.0 );

const Mat34d  m34dZERO      ( 0.0, 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0, 0.0 );

const Mat34d  m34dONES      ( 1.0, 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0, 1.0 );

/************************************************************************/
/* Matrix44                                                             */
/************************************************************************/
// FLOAT
const Mat44f  m44fIDENTITY  ( 1.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 1.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 1.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 1.0f );

const Mat44f  m44fZERO      ( 0.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 0.0f,
							  0.0f, 0.0f, 0.0f, 0.0f );

const Mat44f  m44fONES      ( 1.0f, 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f, 1.0f,
							  1.0f, 1.0f, 1.0f, 1.0f );

//  CONSTANTES DOUBLE
const Mat44d  m44dIDENTITY  ( 1.0, 0.0, 0.0, 0.0,
							  0.0, 1.0, 0.0, 0.0,
							  0.0, 0.0, 1.0, 0.0,
							  0.0, 0.0, 0.0, 1.0 );

const Mat44d  m44dZERO      ( 0.0, 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0, 0.0,
							  0.0, 0.0, 0.0, 0.0 );

const Mat44d  m44dONES      ( 1.0, 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0, 1.0,
							  1.0, 1.0, 1.0, 1.0 );